If you have tried Oort (the unstable Gnus branch leading to this release) but went back to a stable version, be careful when upgrading to this version. In particular, you will probably want to remove all .marks (nnml) and .mrk (nnfolder) files, so that flags are read from your .newsrc.eld instead of from the .marks/.mrk file where this release store flags. See a later entry for more information about marks. Note that downgrading isn't save in general.
make
remove-installed-shadows.Use make.bat if
you want to install Gnus under MS Windows, the first
argument to the batch-program should be the directory
where xemacs.exe
respectively emacs.exe is located, if you want to
install Gnus after compiling it, give make.bat /copy as the
second parameter.
make.bat has
been rewritten from scratch, it now features automatic
recognition of XEmacs and GNU Emacs, generates
gnus-load.el,
checks if errors occur while compilation and generation
of info files and reports them at the end of the build
process. It now uses makeinfo if it is
available and falls back to infohack.el otherwise.
make.bat should
now install all files which are necessary to run Gnus and
be generally a complete replacement for the
configure; make; make install cycle used
under Unix systems.
The new make.bat makes make-x.bat and xemacs.mak superfluous, so they have been removed.
As a result of the following change, the ~/News/overview/ directory is not used any more. You can safely delete the entire hierarchy.
(require 'gnus-load)
If you use a stand-alone Gnus distribution, you'd
better add (require 'gnus-load) into your
~/.emacs after
adding the Gnus lisp directory into load-path.
File gnus-load.el contains autoload commands, functions and variables, some of which may not be included in distributions of Emacsen.
TLS/SSL is now supported in IMAP and NNTP via tls.el and GNUTLS.
Gnus is now able to take out spam from your mail and news streams using a wide variety of programs and filter rules. Among the supported methods are RBL blocklists, bogofilter and white/blacklists. Hooks for easy use of external packages such as SpamAssassin and Hashcash are also new. Thwarting Email Spam and Spam Package.
Sieve rules can be added as Group Parameters for groups, and the complete Sieve script is generated using D g from the Group buffer, and then uploaded to the server using C-c C-l in the generated Sieve buffer. See Sieve Commands, and the new Sieve manual Top.
gnus-group-read-ephemeral-group can be
called interactively, using G M.There are new commands for fetching newsgroup charters (H c) and control messages (H C).
gnus-parameters can be
used to set group parameters.
Earlier this was done only via G p (or G c), which stored the parameters in ~/.newsrc.eld, but via this variable you can enjoy the powers of customize, and simplified backups since you set the variable in ~/.gnus.el instead of ~/.newsrc.eld. The variable maps regular expressions matching group names to group parameters, a'la:
(setq gnus-parameters
'(("mail\\..*"
(gnus-show-threads nil)
(gnus-use-scoring nil))
("^nnimap:\\(foo.bar\\)$"
(to-group . "\\1"))))
The estimated number of unread articles in the group
buffer should now be correct for nnimap groups. This is
achieved by calling
nnimap-fixup-unread-after-getting-new-news
from the gnus-setup-news-hook (called on
startup) and
gnus-after-getting-new-news-hook. (called
after getting new mail). If you have modified those
variables from the default, you may want to add
nnimap-fixup-unread-after-getting-new-news
again. If you were happy with the estimate and want to
save some (minimal) time when getting new mail, remove
the function.
This is supposedly what USEFOR wanted to migrate to.
See gnus-group-name-charset-group-alist and
gnus-group-name-charset-method-alist for
customization.
gnus-group-charset-alist and
gnus-group-ignored-charsets-alist.
The regexps in these variables are compared with full group names instead of real group names in 5.8. Users who customize these variables should change those regexps accordingly. For example:
("^han\\>" euc-kr) -> ("\\(^\\|:\\)han\\>" euc-kr)
gnus-article-followup-with-original) and
R
(gnus-article-reply-with-original) only yank
the text in the region if the region is active.gnus-draft-edit-message. Use B w
for gnus-summary-edit-article instead.More buttons for URLs, mail addresses, Message-IDs,
Info links, man pages and Emacs or Gnus related
references. See Article
Buttons. The variables
gnus-button-*-level
can be used to control the appearance of all article
buttons. See Article
Button Levels.
The picons code has been reimplemented to work in GNU Emacs—some of the previous options have been removed or renamed.
Picons are small “personal icons” representing users, domain and newsgroups, which can be displayed in the Article buffer. See Picons.
gnus-treat-body-boundary
is non-nil, a boundary line is drawn at the
end of the headers.(setq
gnus-summary-display-arrow nil) to disable it.Do you often find yourself replying to news by email
by mistake? Then the new option
gnus-confirm-mail-reply-to-news is just the
thing for you.
gnus-summary-display-while-building is
non-nil, the summary buffer is shown and
updated as it's being built.recent mark
‘.’
indicates newly arrived messages (as opposed to old but
unread messages).mm-uu-diff-groups-regexpGnus now tries to recognize the mangled header block
that some Microsoft mailers use to indicate that the rest
of the message is a citation, even though it is not
quoted in any way. The variable
gnus-cite-unsightly-citation-regexp matches
the start of these citations.
The new command W Y f
(gnus-article-outlook-deuglify-article)
allows deuglifying broken Outlook (Express) articles.
gnus-article-skip-boring
If you set gnus-article-skip-boring to
t, then Gnus will not scroll down to show
you a page that contains only boring text, which by
default means cited text and signature. You can customize
what is skippable using
gnus-article-boring-faces.
This feature is especially useful if you read many articles that consist of a little new content at the top with a long, untrimmed message cited below.
Put (setq gnus-treat-display-smileys nil)
in ~/.gnus.el to
disable it.
gnus-summary-line-format
The default value changed to ‘%U%R%z%I%(%[%4L: %-23,23f%]%)
%s\n’. Moreover
gnus-extra-headers,
nnmail-extra-headers and
gnus-ignored-from-addresses changed their
default so that the users name will be replaced by the
recipient's name or the group name posting to for
NNTP groups.
The command gnus-mime-save-part-and-strip
(bound to C-o on MIME
buttons) saves a part and replaces the part with an
external one. gnus-mime-delete-part (bound
to d on MIME buttons)
removes a part. It works only on back ends that support
editing.
gnus-default-charset
The default value is determined from the
current-language-environment variable,
instead of iso-8859-1. Also the
‘.*’
item in gnus-group-charset-alist is
removed.
Gnus supports Muttprint natively with O P from the Summary and Article buffers. Also, each individual MIME part can be printed using p on the MIME button.
Format spec ‘%&user-date;’ is added
into gnus-summary-line-format-alist. Also,
user defined extended format specs are supported. The
extended format specs look like ‘%u&foo;’, which invokes
function
gnus-user-format-function-foo.
Because ‘&’ is used as the escape
character, old user defined format
‘%u&’ is no longer
supported.
gnus-summary-limit-include-cached) is
rewritten.
It was aliased to Y c
(gnus-summary-insert-cached-articles). The
new function filters out other articles.
If C-u is used on subject, author or extra
headers, i.e., / s, / a, and /
x
(gnus-summary-limit-to-{subject,author,extra})
respectively, the result will be to display all articles
that do not match the expression.
You can delay the sending of a message with C-c C-j in the Message buffer. The messages are delivered at specified time. This is useful for sending yourself reminders. See Delayed Articles.
nnml-use-compressed-files is
non-nil, the nnml back end allows compressed
message files.gnus-gcc-mark-as-read
automatically marks Gcc articles as read.If gnus-gcc-externalize-attachments or
message-fcc-externalize-attachments is
non-nil, attach local files as external
parts.
Earlier it was generated when the user configurable
email address was different from the Gnus guessed default
user address. As the guessing algorithm is rarely correct
these days, and (more controversially) the only use of
the Sender: header was to check if you are entitled to
cancel/supersede news (which is now solved by Cancel
Locks instead, see another entry), generation of the
header has been disabled by default. See the variables
message-required-headers,
message-required-news-headers, and
message-required-mail-headers.
Message now asks if you wish to remove
‘(was: <old
subject>)’ from subject lines (see
message-subject-trailing-was-query).
C-c M-m and C-c M-f inserts markers
indicating included text. C-c C-f a adds a
X-No-Archive: header. C-c C-f x inserts
appropriate headers and a note in the body for
cross-postings and followups (see the variables
message-cross-post-*).
message-generate-headers-first is
nil.To support groups that contains SPC and other weird
characters, groups are quoted before they are placed in
the Gcc: header. This means variables such as
gnus-message-archive-group should no longer
contain quote characters to make groups containing SPC
work. Also, if you are using the string
‘nnml:foo,
nnml:bar’ (indicating Gcc into two
groups) you must change it to return the list
("nnml:foo" "nnml:bar"), otherwise the Gcc:
line will be quoted incorrectly. Note that returning the
string ‘nnml:foo,
nnml:bar’ was incorrect earlier, it
just didn't generate any problems since it was inserted
directly.
message-insinuate-rmail
Adding (message-insinuate-rmail) and
(setq mail-user-agent 'gnus-user-agent) in
.emacs convinces
Rmail to compose, reply and forward messages in
message-mode, where you can enjoy the power of
MML.
message-minibuffer-local-map
The line below enables BBDB in resending a message:
(define-key message-minibuffer-local-map [(tab)]
'bbdb-complete-name)
gnus-posting-styles
Add a new format of match like
((header "to" "larsi.*org")
(Organization "Somewhere, Inc."))
The old format like the lines below is obsolete, but still accepted.
(header "to" "larsi.*org"
(Organization "Somewhere, Inc."))
message-ignored-news-headers and
message-ignored-mail-headers
‘X-Draft-From’ and ‘X-Gnus-Agent-Meta-Information’ have been added into these two variables. If you customized those, perhaps you need add those two headers too.
use-hard-newlines. Decoding format=flowed was
present but not documented in earlier versions.mm-fill-flowed can be used to
disable treatment of “format=flowed” messages.
Also, flowed text is disabled when sending inline PGP
signed messages. See Flowed
text. (New in Gnus 5.10.7)
This is invoked with the C-c M-n key binding from message mode.
In the message buffer, C-c C-f C-i or C-c C-u cycles through the valid values.
This means a header ‘Cancel-Lock’ is inserted in
news posting. It is used to determine if you wrote an
article or not (for canceling and superseding). Gnus
generates a random password string the first time you
post a message, and saves it in your ~/.emacs using the Custom system.
While the variable is called
canlock-password, it is not security
sensitive data. Publishing your canlock string on the web
will not allow anyone to be able to anything she could
not already do. The behavior can be changed by
customizing message-insert-canlock.
It needs an external S/MIME and
OpenPGP implementation, but no additional Lisp libraries.
This add several menu items to the Attachments menu, and
C-c RET key bindings, when composing messages.
This also obsoletes
gnus-article-hide-pgp-hook.
This change was made to avoid conflict with the
standard binding of back-to-indentation,
which is also useful in message mode.
message-forward-show-mml
changed to the symbol best.
The behavior for the best value is to
show MML (i.e., convert to
MIME) when appropriate.
MML will not be used when forwarding
signed or encrypted messages, as the conversion
invalidate the digital signature.
auto-compression-mode is enabled,
attachments are automatically decompressed when activated.
Message supports non-ASCII domain
names in From:, To: and Cc: and will query you whether to
perform encoding when you try to send a message. The
variable message-use-idna controls this.
Gnus will also decode non-ASCII domain
names in From:, To: and Cc: when you view a message. The
variable gnus-use-idna controls this.
mml-dnd-protocol-alist and
mml-dnd-attach-options. See MIME.
auto-fill-mode is enabled by default in
Message mode. See message-fill-column. See
Message Headers.
Gnus includes a new back end nnmaildir.el. See Maildir.
This makes it possible to take backup of nnml/nnfolder
servers/groups separately of ~/.newsrc.eld, while preserving
marks. It also makes it possible to share articles and
marks between users (without sharing the
~/.newsrc.eld
file) within e.g. a department. It works by storing the
marks stored in ~/.newsrc.eld in a per-group file
.marks (for nnml)
and groupname.mrk (for nnfolder, named
groupname). If the nnml/nnfolder is moved to
another machine, Gnus will automatically use the
.marks or
.mrk file instead
of the information in ~/.newsrc.eld. The new server
variables nnml-marks-is-evil and
nnfolder-marks-is-evil can be used to
disable this feature.
gnus-group-update-tool-bar. Its default value
depends on your Emacs version. This is a new feature in
Gnus 5.10.9.gnus-agent
The Gnus Agent has seen a major updated and is now
enabled by default, and all nntp and nnimap servers from
gnus-select-method and
gnus-secondary-select-method are agentized
by default. Earlier only the server in
gnus-select-method was agentized by the
default, and the agent was disabled by default. When the
agent is enabled, headers are now also retrieved from the
Agent cache instead of the back ends when possible.
Earlier this only happened in the unplugged state. You
can enroll or remove servers with J a and
J r in the server buffer. Gnus will not
download articles into the Agent cache, unless you
instruct it to do so, though, by using J u or
J s from the Group buffer. You revert to the
old behavior of having the Agent disabled with
(setq gnus-agent nil). Note that putting
(gnus-agentize) in ~/.gnus.el is not needed any
more.
If one reads an article while plugged, and the article
already exists in the Agent, it won't get downloaded once
more. (setq gnus-agent-cache nil) reverts to
the old behavior.
gnus-dired-minor-mode (see Other modes) installs
key bindings in dired buffers to send a file as an
attachment, open a file using the appropriate mailcap
entry, and print a file using the mailcap entry.
%C for positioning point
has changed to %*.gnus-slave-unplugged
A new command which starts Gnus offline in slave mode.